<html xmlns="http://www.w3.org/1999/xhtml"  
      xmlns:h="http://java.sun.com/jsf/html"  
      xmlns:f="http://java.sun.com/jsf/core"  
      xmlns:p="http://primefaces.org/ui"
      xmlns:ui="http://java.sun.com/jsf/facelets"> 

    <ui:composition template="../index.xhtml">
        <ui:define name="conteudo">
            <h:form id="tituloPagina">
                <h:outputText value="Cadastro de caixas"/>
            </h:form>
            <h:form id="formTabela">
                <p:growl id="msg"/>
                <p:dataTable id="listContasPagar" var="forn" value="#{caixaControler.listCaixas}" widgetVar="carsTableAtivos" style="width: 50%;"
                             rowKey="#{forn.id}" selectionMode="single"  emptyMessage="Nenhum registro foi encontrado!" paginator="true" rows="10" rowsPerPageTemplate="5,10,15,#{caixaControler.listCaixas.size()}">
                    <f:facet name="header" >  
                        <p:outputPanel>  
                            <h:outputText value="Digite para pesquisar " />
                            <p:inputText id="globalFilter" onkeyup="carsTableAtivos.filter()" style="width:150px" /> 
                            <p:commandButton value="Novo" accesskey="N" onclick="dlgCaixa.show()" action="#{caixaControler.inicializaObj()}" update=":formAdd"/>
                        </p:outputPanel>  
                    </f:facet> 
                    <p:column headerText="Ações" footerText="Ações" filterMatchMode="Ações" style="width: 90px;">  
                        <p:commandButton action="#{caixaControler.setCaixa(forn)}" onclick="dlgCaixa.show();" update=":formAdd"
                                         image="ui-icon ui-icon-pencil" title="alterar" />
                        <p:commandButton image="ui-icon ui-icon-close" title="excluir" 
                                         actionListener="#{caixaControler.setCaixa(forn)}" onclick="confirmationExcluirgrupo.show();"/>
                        <p:commandButton image="ui-icon-transfer-e-w" title="Verificar conexão com o caixa" onclick="statusDialog.show();" onsuccess="statusDialog.hide();"
                                         actionListener="#{caixaControler.verificaConexao(forn.ip)}" update="@form"/>
                    </p:column>
                    <p:column filterBy="${forn.nome}" headerText="Nome caixa" footerText="Nome caixa" sortBy="${forn.nome}">    
                        <h:outputText value="${forn.nome}" />  
                    </p:column>  
                    <p:column filterBy="${forn.ip}" headerText="IP" footerText="IP" sortBy="${forn.ip}">    
                        <h:outputText value="${forn.ip}" />  
                    </p:column>  
                </p:dataTable>
            </h:form>
            <p:dialog id="dialogFunc" header="Nova aliquota de ICMS" widgetVar="dlgCaixa" modal="true" resizable="false" appendToBody="true">  
                <h:form id="formAdd">
                    <p:messages/>
                    <h:inputHidden value="#{caixaControler.caixa.id}"/>
                    <h:panelGrid columns="2">
                        <h:outputText value="Código"/>
                        <p:inputText value="#{caixaControler.caixa.id}" disabled="true" size="5"/>

                        <h:outputText value="Nome caixa:"/>
                        <p:inputText value="#{caixaControler.caixa.nome}" required="true" requiredMessage="Informe o nome do caixa!!">
                            <p:focus/>
                        </p:inputText>

                        <h:outputText value="IP:"/>
                        <p:inputText value="#{caixaControler.caixa.ip}" required="true" requiredMessage="Informe o IP do caixa"/>
                    </h:panelGrid>
                    <h:panelGrid columns="3">
                        <p:commandButton value="Salvar" action="#{caixaControler.salvar()}" update="formAdd :formTabela" onclick="statusDialog.show();" onsuccess="statusDialog.hide();"/>
                        <p:commandButton value="Novo" accesskey="N" update=":formAdd" action="#{caixaControler.inicializaObj()}" process="@this"/>
                        <p:commandButton value="Cancelar" onclick="dlgCaixa.hide()" process="@this"/>
                    </h:panelGrid>
                </h:form>
                <!-- confirmações  de exclusão-->
                <h:form>
                    <p:confirmDialog id="confirmDialog" message="Confirma excluir este caixa?" appendToBody="true"
                                     header="Atenção!!!" severity="alert" widgetVar="confirmationExcluirgrupo" >  
                        <p:commandButton id="confirm" value="Sim" oncomplete="confirmationExcluirgrupo.hide()"  
                                         actionListener="#{caixaControler.excluir()}" update=":formTabela" onclick="statusDialog.show();" onsuccess="statusDialog.hide();"/>  
                        <p:commandButton id="decline" value="Cancelar" onclick="confirmationExcluirgrupo.hide()" type="button" />   
                    </p:confirmDialog>
                </h:form>
            </p:dialog>
        </ui:define>
    </ui:composition>
</html>